Methods for consolidating module types for industrial control systems

ABSTRACT

A programmable discrete input module is described. In one or more implementations, the programmable discrete input module comprises a pulse width modulation module configured to generate a pulse width modulated signal based upon an input signal and a pulse width demodulation module configured to generate a demodulated pulse width signal. An isolator is configured to isolate the pulse width modulation module and the pulse width demodulation module and to generate isolated modulated pulse width signal based upon the pulse width modulated signal for the pulse width demodulation module to generate the demodulated pulse width signal. The programmable discrete input module also includes a first comparator and a second comparator for comparing the demodulated pulse width signal with a respective programmable reference and a digital filter configured to filter a comparison signal output by the first comparator or the second comparator to generate a discrete input signal.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation under 35 U.S.C. § 120 of U.S.application Ser. No. 15/289,379, entitled METHODS FOR CONSOLIDATINGMODULE TYPES FOR INDUSTRIAL CONTROL SYSTEMS, filed on Oct. 10, 2016which is a continuation of Ser. No. 14/401,969, entitled METHODS FORCONSOLIDATING MODULE TYPES FOR INDUSTRIAL CONTROL SYSTEMS, filed on Nov.18, 2014, which is a 371 application of International Application No.PCT/US2013/53716, entitled METHODS FOR CONSOLIDATING MODULE TYPES FORINDUSTRIAL CONTROL SYSTEMS, filed on Aug. 6, 2013 which are herebyincorporated by reference in their entirety.

BACKGROUND

Industrial control systems (ICS) encompass several types of industrialand process control systems used in a variety of industrial environmentsand critical infrastructures. Example industrial control systems (ICS)include, but are not limited to: Supervisory Control and DataAcquisition (SCADA) systems, Distributed Control Systems (DCS), andother control equipment using, for example, Programmable LogicControllers (PLC) or the like. Using information collected from remotestations in the industrial or infrastructure environment, automatedand/or operator-driven supervisory commands can be transmitted to remotestation control devices. These control devices can control various localoperations, such as opening and/or closing valves and circuit breakers,operating solenoids, collecting data from sensor systems, and monitoringa local environment for alarm conditions.

SUMMARY

A programmable discrete input module is described. In one or moreembodiments, the programmable discrete input module comprises a pulsewidth modulation module configured to generate a pulse width modulatedsignal based upon an input signal and a pulse width demodulation moduleconfigured to generate a demodulated pulse width signal. An isolator isconfigured to isolate the pulse width modulation module and the pulsewidth demodulation module. The isolator generates an isolated modulatedpulse width signal based upon the pulse width modulated signal that isfurnished to the pulse width demodulation module to generate, thedemodulated pulse width signal. A first comparator and a secondcomparator compare the demodulated pulse width signal with a respectiveprogrammable reference. A digital filter filters a comparison signaloutput by the first comparator or the second comparator to generate adiscrete input signal.

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used as an aid in determining the scope of the claimed subjectmatter.

DRAWINGS

The Detailed Description is described with reference to the accompanyingfigures. The use of the same reference numbers in different instances inthe Detailed Description and the figures may indicate similar oridentical items.

FIG. 1 is a block diagram illustrating an industrial control system inaccordance with example implementation of the present disclosure.

FIG. 2 is a block diagram illustrating a programmable discrete outputmodule in accordance with an example implementation of the presentdisclosure.

FIGS. 3A and 3B are circuit diagrams illustrating the programmablediscrete output module shown in FIG. 2 in accordance with specificimplementations of the present disclosure.

FIG. 4 is a block diagram illustrating a programmable discrete inputmodule in accordance with an example implementation of the presentdisclosure.

FIG. 5 is a circuit diagram illustrating the programmable discrete inputmodule shown in FIG. 4 in accordance with a specific implementation ofthe present disclosure.

FIG. 6 is a block diagram illustrating a computing device in accordancewith an example implementation of the present disclosure, wherein thecomputing device may be implemented as a field-programmable gate arraydevice, an application-specific integrated circuit device, and so forth

FIG. 7 is a flow diagram illustrating an example method for whether anovercurrent event has occurred in accordance with an exampleimplementation of the present disclosure.

FIG. 8 is a flow diagram illustrating an example method for generating adiscrete input signal in accordance with an example implementation ofthe present disclosure.

DETAILED DESCRIPTION

Overview

Industrial control systems/process control systems typically includeinput/output modules that are configured to interfere with inputinstruments, or to transmit instructions to output instruments in theprocess or the field via a power backplane. For example, an input/outputmodule may be used to interface with a process sensor for measuring acharacteristic associated with the industrial process. In anotherinstance, an input/output module may be used to interface with a motorfor controlling operation of the motor. Consequently, a variety ofinput/output modules may be required to interface with the variousinput/output instrumentation of the system. For example, variousinstruments that interface with the input/output modules may operate atdifferent voltage levels or voltage types. Thus, a particular instrumentmay require a dedicated input/output module. For example, a dedicatedinput/output module may be required for a first instrument (e.g., asensor) operating at twenty-four volts (24 V) and another dedicatedinput/output module may be required for a second instrument (e.g., amotor) operating at two hundred and forty volts (240 V).

Accordingly, a programmable discrete output module is disclosed. In oneor more implementations, the programmable discrete output moduleincludes a current sensing circuit for generating a current sensingsignal indicating current value. For example, the current sensingcircuit may comprise a differential amplifier connected in parallel withan impedance element. The differential amplifier is configured togenerate an output signal (e.g., current sensing signal) representing avoltage drop across the impedance element, which indicates a currentflow through the current sensing circuit. The programmable discreteoutput module also includes a comparator configured to compare thecurrent sensing signal with an overcurrent reference and generates acomparison signal indicating whether an overcurrent event has occurred.A microcontroller is electrically connected to the comparator andconfigured to control (e.g., behaviorally control) the switching elementbased upon one or more programmable parameters. The programmableparameters may dictate operation of the switching element based upon aload configured to interface with the programmable discrete outputmodule and/or current conditions within the module.

In embodiments, the programmable discrete output module includes one ormore isolators for providing galvanic isolation to the programmablediscrete output module.

One or more of the components within the programmable discrete outputmodule may be implemented in hardware, software, firmware, combinationsthereof, or the like. In some implementations, the programmable discreteoutput module is configured to interface with industrial control systemcomponents including, but not necessarily limited to, modules thatoperate at switching voltages of twenty-four volts (24V), forty-eightvolts (48V), one hundred and twenty volts (120V), or two hundred andforty volts (240V). These components may also operate utilizingalternating current (AC) voltages or direct current (DC) voltages. Thus,the module can provide functionality of about eight (8) output moduleswith one (1) output module) and provide an AC/DC response withoutsubstantially comprising time.

A programmable discrete input module is also described. In one or moreimplementations, the programmable discrete input module comprises apulse width modulation module configured to generate a pulse widthmodulated signal based upon an input signal and a pulse widthdemodulation module configured to generate a demodulated pulse widthsignal. An isolator is configured to isolate the pulse width modulationmodule and the pulse width demodulation module and to generate isolatedmodulated pulse width signal based upon the pulse width modulated signalfor the pulse width demodulation module to generate the demodulatedpulse width signal. The programmable discrete input module also includesa first comparator and a second comparator for comparing the demodulatedpulse width signal with a respective programmable reference. A digitalfilter is configured to filter a comparison signal output by the firstcomparator or the second comparator to generate a discrete input signal.

The programmable discrete input module may utilize existing componentsto allow a user to select programmable references, or set points, aswell as programmable hysteresis, which may reduce the cost of operationas compared to other programmable discrete output modules. One or moreof the components within the programmable discrete output module may beimplemented in hardware, software, firmware, combinations thereof, orthe like. In some embodiments, the programmable discrete input module isconfigured to interface with industrial control system controlcomponents including, but not necessarily limited to, components thatoperate at switching voltages of twenty-four (24) volts, forty-eight(48) volts, one hundred and twenty (120) volts, or two hundred and forty(240) volts. These components may also operate utilizing alternatingcurrent (AC) voltages or direct current (DC) voltages. Thus, theprogrammable discrete input module can provide functionality typicallyassociated with multiple independent programmable discrete input modules(e.g., replacing the functionality of about sixteen (16) cards with one(1) card) and provide an AC/DC response without substantially comprisingtime.

Example Industrial Control System/Process Control System

FIG. 1 illustrates an industrial control system/process control system100 for controlling or operating one or more industrial control systemcomponents (e.g., sensors, motors, etc.). In embodiments, the industrialcontrol system/process control system 100 includes a computing device102 that includes a processor 104 and a memory 106. The processor 104provides processing functionality for the computing device 102 and mayinclude any number of processors, micro-controllers, or other processingsystems, and resident or external memory for storing data and otherinformation accessed or generated by the computing device 102. Theprocessor 104 may execute one or more software programs (e.g., modules)that implement techniques described herein.

The memory 106 is an example of tangible computer-readable media thatprovides storage functionality to store various data associated with theoperation of the computing device 102, software functionality describedherein, or other data to instruct the processor 104 and other elementsof the computing device 102 to perform the steps described herein.Although a single memory 106 is shown within the computing device 102, awide variety of types and combinations of memory may be employed. Thememory 106 may be integral with the processor 104, stand-alone memory,or a combination of both. The memory may include, for example, removableand non-removable memory elements such as RAM, ROM, Flash (e.g., SDCard, mini-SD card, micro-SD Card), magnetic, optical, USB memorydevices, and so forth.

The computing device 102 is communicatively coupled to one or moreinput/output (I/O) modules 108 (i.e., field devices, programmablediscrete input/output devices, such as a programmable discrete outputmodule 200 or a programmable discrete input module 400) over acommunication network 110 via a communication module 112, which isincluded in the computing device 102. In a specific implementation ofthe present disclosure, the communication network 110 comprises abackplane 113 used to power and/or furnish communications with circuitryof the respective modules 200, 400. In other implementations, thecommunication network may at least partially comprise a variety ofdifferent types of networks and connections that are contemplated,including, but not limited to: switch fabric; the Internet; an intranet;a satellite network; a cellular network; a mobile data network; wiredand/or wireless connections, and so forth.

Wireless networks may comprise any of a plurality of communicationsstandards, protocols and technologies, including, but not limited to:Global System for Mobile Communications (GSM), Enhanced Data GSMEnvironment (EDGE), high-speed downlink packet access (HSDPA), widebandcode division multiple access (W-CDMA), code division multiple access(CDMA), time division multiple access (TDMA), Bluetooth, WirelessFidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g and/orIEEE 802.11n), voice over Internet Protocol (VoIP), Wi-MAX, a protocolfor email (e.g., Internet message access protocol (IMAP) and/or postoffice protocol (POP)), instant messaging (e.g., extensible messagingand presence protocol (XMPP)), Session Initiation Protocol for InstantMessaging and Presence Leveraging Extensions (SIMPLE), and/or InstantMessaging and Presence Service (IMPS), and/or Short Message Service(SMS), or any other suitable communication protocol.

The I/O modules 108 are configured to interface with one or moreindustrial control system components 109, such as sensors and/or motors.The I/O modules 108 may comprise input modules, output modules, and/orinput and output modules. For instance, input modules can be used toreceive information from input instruments in the process or the field,while output modules can be used to transmit instructions to outputinstruments in the field. For example, I/O modules 108 can be connectedto an industrial control system component 109 that comprises a processsensor for measuring pressure in piping for a gas plant, a refinery, andso forth. In implementations, the I/O modules 108 may be used to collectdata and control systems in applications including, but not necessarilylimited to: industrial processes, such as manufacturing, production,power generation, fabrication, and refining; infrastructure processes,such as water treatment and distribution, wastewater collection andtreatment, oil and gas pipelines, electrical power transmission anddistribution, wind farms, and large communication systems; facilityprocesses for buildings, airports, ships, and space stations (e.g., tomonitor and control Heating, Ventilation, and Air Conditioning (HVAC)equipment and energy consumption); large campus industrial processplants, such as oil and gas, refining, chemical, pharmaceutical, foodand beverage, water and wastewater, pulp and paper, utility power,mining, metals; and/or critical infrastructures. The I/O modules 108 mayalso be connected to an industrial control system component 109 thatcomprises a motor and configured to control one or more operatingcharacteristics of the motor, such as motor speed, motor torque, and soforth. In other implementations, the industrial control system component109 may comprise a valve and the I/O modules 108 is configured tocontrol one or more operating characteristics of the valve, such asopening or closing the valve.

The communication module 112 may be representative of a variety ofcommunication components and functionality, including, but not limitedto: one or more antennas; a browser, a transmitter and/or receiver(e.g., radio frequency circuitry); a wireless radio; data ports;software interfaces and drivers; networking interfaces; data processingcomponents; and so forth.

As shown in FIG. 1, the computing device 102 is communicatively coupledto a display 114 configured to display visual output to a user (e.g., anoperator of the industrial control system/process control system 100,etc.). The visual output may include graphics, text, icons, video, andany combination thereof (collectively termed “graphics”). In someembodiments, some or all of the visual output may correspond touser-interface objects and the like. The computing device 102 mayfurther be communicatively coupled to user-interface devices 116 (e.g.,a keypad, a keyboard, buttons, a wireless input device, a thumbwheelinput device, a trackstick input device, touchscreen, and so on) forfurnishing communication functionality between the user and the system100. The user-interface devices 116 may also include one or more audioI/O devices, such as a microphone, speakers, and so on. For example, theuser may utilize the user-interface devices 116 to furnish inputparameters to one or more programmable discrete input or programmablediscrete output modules as described in greater detail herein.

The computing device 102 includes an industrial control system (ICS)module 118, which is storable in memory 106 and executable by theprocessor 104 (e.g., a non-transitory computer-readable medium embodyinga program executable by the processor 108). As described in greaterdetail herein, the industrial control system module 118 isrepresentative of functionality to facilitate the exchange ofcommunication between the computing device 102 and the I/O modules 108(e.g., the programmable discrete output module 200, the programmablediscrete input module 400) based upon user-selected and/or user-definedinput.

Example Programmable Discrete Output Modules

FIGS. 2, 3A and 3B illustrate example programmable discrete outputmodules 200 in accordance with example implementations of the presentdisclosure. The programmable discrete output module 200 represents adiscrete communication channel for the industrial control system/processcontrol system 100. The programmable discrete output module 200 may beconfigured to interface with one or more industrial system controlcomponents, which may include, but is not limited to: temperaturesensors, liquid tank sensors, pressure sensors, and the like. In animplementation of the present disclosure, the programmable discreteoutput module 200 is configured to operate industrial control systemcomponents, such as pumps, motor controllers, valves, and so forth. Theprogrammable discrete output module 200 operates at various voltagelevels, or excitations. For example, a first ICS component 109 may beconfigured to operate at a first voltage level, and a second ICScomponent 109 may be configured to operate at a second voltage level. Inthese examples, the same module 200 may be configured to interfere witheither component 109 upon receiving one or more programmable parameters.An alternating current (AC) voltage excitation may be twenty-four (24)volts, forty-eight (48) volts, one hundred and twenty (120) volts, ortwo hundred and forty (240) volts. In another example, the voltageexcitation may be a direct current (DC) voltage excitation or analternating current (AC) voltage excitation.

As shown in FIG. 2, the programmable discrete output module 200 includesat least one switching element 202 electrically connected to terminals204A, 204B. The terminals 204A, 20B are configured to interface with thecommunication network 110, such as a backplane 113, configured toreceive the programmable discrete output module 200. The switchingelement 202 has an open configuration that at least substantiallyprevents current flow within an electrical path 206 (e.g., a conductor,such as a wire, a trace, or the like) and a closed configuration toallow current flow within the electrical path 206. In one or moreimplementations, the switching element 202 may comprise one or moretransistors such as metal-oxide-semiconductor field-effect transistors(MOSFETs), insulated-gate bipolar transistors, an electromechanicalrelay, or the like. For example, in a specific implementation, as shownin FIG. 3A, the switching element 202 comprises a power transistor 210,which includes a drain terminal 212, a source terminal 214, and a gateterminal 216. In this implementation, the module 200 is configured tointerface with a communication network 110 having a direct current (DC)excitation configuration. In another specific implementation, as shownin FIG. 3B, the switch element 202 comprises a first power transistor210 and a second power transistor 218. The second power transistor 218includes a drain terminal 220, a source terminal 222, and a gateterminal 224. In this implementation, the module 200 is configured tointerface with a ICS component 109 having an alternate current (AC)excitation configuration.

The switching element 202 is arranged in series with a current sensingcircuit 208 along the electrical path 206. The current sensing circuit208 is configured to furnish current sensing functionality to theprogrammable discrete output module 200. For example, the currentsensing circuit 208 is configured to furnish overcurrent detectionfunctionality to the programmable discrete output module 200. In aspecific implementation, as shown in FIGS. 3A and 3B, the currentsensing circuit 208 comprises an impedance element 226 within theelectrical path 206 and a differential amplifier 228 electricallyconnected in parallel with the impedance element 226. As shown, thedifferential amplifier 228 includes a first input voltage terminal 230,a second input voltage terminal 232, and an output terminal 234. Thedifferential amplifier 228 is configured to amplify the voltage dropacross the impedance element 226 and output a signal representing theamplified voltage drop. In one or more implementations, the impedanceelement 226 may comprise one or more resistors, an electrical tracehaving a known resistance, or one or more field-effect transistordevices. In one or more implementations, the differential amplifier 228comprises an operational amplifier configured to furnish differentialamplifier functionality to the module 200.

The programmable discrete output module 200 also includes a comparator236 that is configured to furnish comparison functionality to the module200. The comparator 236 includes a first input terminal 238, a secondinput terminal 240, and an output terminal 242. The first input terminal238 is electrically connected to the output terminal 234 of thedifferential amplifier 228, and second input terminal 240 iselectrically connected to a reference signal, such as a referencevoltage. The comparator 236 compares the amplified voltage drop signalto the reference signal. When the amplified voltage drop signal isgreater than the reference signal, the comparator is configured tooutput a first signal, such as a logic high (e.g., logic “1”) signal atthe output terminal 242. Conversely, when the amplified voltage dropsignal is less than the reference signal, the comparator 236 isconfigured to output a second signal, such as a logic low (e.g., logic“0”) signal. The first signal may thus represent a condition that thecurrent measured across the impedance element 226 exceeds a predefinedthreshold (e.g., an overcurrent event), and the second signal mayrepresent the condition that the current measured across the impedanceelement 226 does not exceed the predefined threshold. In one or moreimplementations, the comparator 236 may be implemented in hardware(e.g., as a digital comparator) or in software (e.g., a processor havingmemory including computer-readable medium embodying a program ofinstructions executable by the processor to cause the processor tofurnish comparison functionality.

As shown in FIG. 2, the programmable discrete output module 200 includesa first isolator 244 and a second isolator 246. The isolators 244, 246are configured to furnish galvanic isolation to the programmablediscrete output module 200. In a specific implementation, as shown inFIGS. 3A and 3B, the isolators 244, 246 may comprise a respectiveoptical transmitter 248, 250 and a corresponding optical sensor (e.g.,an optical receiver) 252, 254. In such implementations, the opticaltransmitters 248, 250 are configured to emit electromagnetic radiationin a limited spectrum of wavelengths. For example, the opticaltransmitters 248, 250 may emit electromagnetic radiation occurring inthe non-visible light spectrum (e.g., infrared spectrum, radio frequencyspectrum, etc.) or to emit electromagnetic radiation occurring in thevisible light spectrum. The optical sensor 252 of the first isolator 244is configured to detect electromagnetic radiation emitted by the opticaltransmitter 248 and convert the electromagnetic radiation into signal,e.g., an isolated comparator signal, that represents the comparatorsignal.

In embodiments, the optical transmitters 248, 250 may comprise, but arenot limited to one or more light emitting diodes, one or more laserdiodes, or the like. The output signal of the comparator 236 isconfigured to drive the optical transmitter 248 of the first isolator244. For example, the optical transmitter 248 may be configured to emitelectromagnetic radiation in a limited spectrum of wavelengths thatrepresent the output signal of the comparator 236. In embodiments, theoptical sensors 252, 254 comprises photodetectors, such as photodiodes,phototransistors, or the like, that convert the detected electromagneticradiation into corresponding electrical signals.

The programmable discrete output module 200 also includes amicrocontroller 256 that is electrically connected to the isolators 244,246. The microcontroller 256 may furnish dedicated processingfunctionality to the module 200. As shown in FIGS. 3A and 3B, theoptical sensor 252 of the first isolator 244 is electrically connectedto the microcontroller 256, and the microcontroller 256 is electricallyconnected to the optical transmitter 250 of the second isolator 246. Inone or more implementations, the microcontroller 256 includes at leastone processor configured to furnish processing functionality to themicrocontroller 256 and memory configured to store one or more modules(e.g., computer programs) executable by the processor.

The microcontroller 256 operates the switching element 202 based uponthe isolated comparator signal. In an implementation, themicrocontroller 256 is configured to control the switching behavior ofthe switching element 202 based upon one or more programmableparameters. In embodiments, the microcontroller 256 may includeprogrammable parameters corresponding to a load, or load type,configured to interface with the programmable discrete output module200. For example, when the microcontroller 256 receives a signalindicating an overcurrent event has occurred, the microcontroller 256 isconfigured to output a microcontroller signal to cause the switchingelement 202 to transition to the open configuration. In this example,the microcontroller 256 generates and outputs a microcontroller signalthat drives the optical transmitter 250, which emits electromagneticradiation in a limited spectrum of wavelengths that represents themicrocontroller signal. The optical sensor 254 detects theelectromagnetic radiation in a limited spectrum of wavelengthrepresenting the microcontroller signal and generates a signal, anisolated microcontroller signal, based upon the detected electromagneticradiation.

The isolated microcontroller signal causes the switching element 202 totransition from the closed configuration to the open configuration. Forexample, as shown in FIGS. 3A and 3B, the optical sensor 254 iselectrically connected to the gate terminal 216 (and/or the gateterminal 224) of the power transistor 210 (and/or the second powertransistor 218). When an overcurrent event is occurring, the isolatedmicrocontroller signal is configured to cause the power transistor 210(and/or the power transistor 218) to transition from an operationalstate (e.g., active mode or triode mode) to a substantiallynon-operational state (e.g., cutoff mode) to at least substantiallyprevent current flow within the electrical path 206. When no overcurrentevent has occurred, the switching element 202 may be maintained in theclosed configuration.

The microcontroller 256 is configured to control the switching behaviorof the switching element 202 based upon the load type interfaced withthe terminals 204A, 204B. For example, a user may furnish, or select,one or more programmable parameters that instruct the microcontroller256 how to respond during an overcurrent event based upon the load type(e.g., soft selectable overcurrent behavior). Thus, a user of the system100 may tailor the behavior of the switching element 202 to the load ofthe module 200. In an implementation, based upon the load type, themicrocontroller 256 may cause the switching element 202 to transition tothe closed configuration at programmed discrete time intervals for aprogrammed amount of times in response to receiving an indication of anovercurrent event. In another implementation, depending on the loadtype, the microcontroller 256 is configured to prevent the switchingelement 202 from transitioning back to the closed configuration due toan overcurrent event.

The industrial control system 100 may employ multiple programmablediscrete output modules 200 that are each configured to communicate withthe computing device 102 via the communication network 110 (e.g., thebackplane 113). The backplane 113 provides power and/or communicationsignal transmissions between the modules 200 and the computing device102. In one or more implementations, respective ones of the channels, orrespective modules 200, may be programmed with different programmableparameters for controlling a switch behavior of the respective module200. In another implementation, each channel may be programmed with thesame programmable parameters for controlling the switch behavior of therespective module 200. Thus, the modules 200, or channels, are eachindividually programmable based upon the load type to interface with themodule 200.

Example Programmable Discrete Modules

FIGS. 4 and 5 illustrate example programmable discrete input modules 400in accordance with example implementations of the present disclosure.The programmable discrete input module 400 may represent a discretecommunication channel for the industrial control system 100 configuredto interface with one or more industrial system control components,which may include, but is not limited to: temperature sensors, liquidtank sensors, pressure sensors, and the like. The programmable discreteinput modules 400 are configured to receive input signals at inputterminals 402A, 402B that represent an input parameter of the industrialcontrol system 100. For example, the input signal may represent atemperature parameter provided by a temperature sensor associated withthe industrial control system 100. In another example, the input signalmay represent a liquid level within a tank provided by a liquid sensorassociated with the industrial control system 100. In yet anotherexample, the input signal may represent a pressure parameter provided bya pressure sensor associated with the industrial control system 100. Themodule 400 is configured to interface with ICS components that operateat differing voltage inputs (e.g., voltage excitations) based upon oneor more programmable parameters furnished to the module 400. Forexample, an alternating current (AC) voltage excitation may betwenty-four volts (24V), forty-eight (48V), one hundred and twenty(120V) volts, or two hundred and forty (240V). The voltage excitationmay be a direct current (DC) voltage input or an alternating current(AC) voltage input.

As shown, the programmable discrete input module 400 includes a pulsewidth modulation module 404 having an input terminal 406 and an outputterminal 408. The pulse width modulation module 404 is configured togenerate a pulse width modulation signal based upon the input signal atthe input terminal 406. In some embodiments, the pulse width modulationmodule 404 is communicatively connected to a voltage converter 410. Insuch embodiments, the voltage converter 410 is electrically connected tothe input terminals 402A, 402B. The converter 410 is configured toreceive an analog current (AC) input signal (e.g., an AC voltage signal)at the input terminals 402A, 402B and convert the analog current (AC)input signal to a corresponding direct current (DC) output signal.

In a specific implementation, the converter 410 comprises a bridgerectifier 412. The bridge rectifier 412 includes at least four diodes414A, 414B, 414C, 414D arranged in a bridge configuration (i.e., a diodebridge). However, it is contemplated that other types of voltageconverter devices may be utilized in place of the bridge rectifier 412.As shown, in FIG. 5, the bridge rectifier 412 includes output terminals416A, 416B that furnish the converted output signal to a voltage divider418. The voltage divider 418 is configured to generate an output signalthat is a portion of the input signal (i.e., the converted signal). Asshown, the voltage divider 418 includes at least two impedance elements420A, 420B configured to attenuate the input signal as a function of theimpedance element values. The impedance element values may be selectedaccording to the requirements of the system 100. In a specificimplementation, the impedance elements 420, 422 are resistors. Thevoltage divider 418 is electrically connected to the pulse widthmodulation module 404. As described above, the pulse width modulationmodule 404 is configured to generate a pulse width modulated signal atthe output terminal 408 as a function of the signal furnished at theinput terminal 406 (i.e., the signal furnished by the voltage divider418). In some embodiments, a user (e.g., an operator) of the industrialcontrol system 100 can select an input voltage detection mode ofoperation based upon the type of voltage input (e.g., AC voltage inputsignal or DC voltage input signal) to the module 400. For example, theICS module 118 is configured to cause the processor 104 to cause thedisplay of graphical representation of the voltage type to be input tothe module 400. The user may utilize a user interface device 116 tocause the module 118 to select the voltage input that the module 400 isto monitor. Based upon the selection, the module 118 is configured tocause the processor 104 to enable operation of the converter 410 whenthe voltage input is AC or to disable operation of the converter 410when the voltage input signal is DC. When the converter 410 is disabled,the input terminals 402A, 402B are directly connected to the pulse widthmodulation module 404 such that the DC voltage input signal is furnisheddirectly to the pulse width modulation module 404. The processor 104 maybe configured to control operation of the switches 423A, 423B, 423C,423D such that the switches 423A, 423B are in an open configuration toprevent a direct connection between the input terminals 402A, 402B(switches 423C, 423D are in a closed configuration) and the module 404when the voltage input is AC and the switches 423A, 423B are in a closedconfiguration to directly connect the input terminals 402A, 402B and themodule 404 (switches 423C, 423D are in the open configuration) when thevoltage input is DC.

In embodiments, the pulse width modulation module 404 may also bedirectly connected with the input terminals 402A, 402B. In suchembodiments, the pulse width modulation module 404 is configured toreceive the AC input signal and digitally filter the AC signal togenerate a direct current signal for the pulse width module 404.

As shown in FIG. 4, the programmable discrete input module 400 includesan isolator 424 configured to furnish galvanic isolation to theprogrammable discrete input module 400. The isolator 424 isolates afirst portion 426 of the programmable discrete input module 400 from asecond portion 428 of the programmable discrete input module 400. Asshown, the pulse width modular module 404 is electrically connected tothe isolator 424, and the pulse width modulated signal is furnished tothe isolator 424. The isolator 424 is configured to allow the exchangeof electrical energy (e.g., electrical energy representing information,electrical energy representing data) between the first portion 426 andthe second portion 428. In an implementation, the isolator 424 comprisesan optical transmitter 430 and an optical sensor 432 (e.g., an opticalsensor). For example, as shown in FIG. 5, the pulse width modulatedsignal drives an optical transmitter 430 configured to emitelectromagnetic radiation in a limited spectrum of wavelengths thatrepresent the pulse width modulated signal. For example, the opticaltransmitter 430 is configured to emit electromagnetic radiationoccurring in the non-visible light spectrum (e.g., infrared spectrum,radio frequency spectrum, etc.) or to emit electromagnetic radiationoccurring in the visible light spectrum. The optical transmitter 430 maycomprise, but is not limited to one or more light emitting diodes, oneor more laser diodes, or the like.

The optical sensor 432 is configured to detect electromagnetic radiationemitted by the optical transmitter 430 and convert the electromagneticradiation into an isolated modulated pulse width signal, such as anelectrical signal, representing the pulse width modulated signal. In oneor more implementations, the optical sensor 432 comprisesphotodetectors, such as photodiodes, phototransistors, or the like, thatconvert the detected electromagnetic radiation into the isolatedmodulated pulse width electrical signal.

As shown in FIG. 4, the programmable discrete input module 400 includesa pulse width demodulation module 434 having an input terminal 436 andan output terminal 438. As shown in FIG. 4, the input terminal 436 iselectrically coupled to the isolator 424. In a specific implementation,as shown in FIG. 5, the input terminal 436 is electrically connected tothe optical sensor 432. The pulse width demodulation module 434 isconfigured to generate a pulse width demodulation signal based upon theisolated modulated pulse width signal at the input terminal 436.

The programmable discrete input module 400 also includes at least afirst comparator 440 and a second comparator 442. As described herein ingreater detail, the comparators 440, 442 are software settable. Forexample, the comparators 440, 442 include programmable thresholds (e.g.,reference points) and programmable hysteresis. The comparators 440, 442may be implemented in a variety of ways. For example, the comparators440, 442 may be implemented in the comparators 440, 442 may beimplemented in hardware (e.g., digital comparators). In another example,the comparators 440, 442 may be implemented in software (e.g., programexecutable instructions) that cause a processor to furnish comparisonfunctionality.

The first comparator 440 and the second comparator 442 furnishcomparison functionality to the system 100. As shown in FIG. 4, thefirst comparator 440 is electrically connected to the first outputterminal 438 of the pulse width demodulation module 434. Similarly, thesecond comparator 442 is electrically connected to the second outputterminal 440 of the pulse width demodulation module 434. The firstcomparator 440 and the second comparator 442 are also operativelyconnected with the processor 104 via the backplane 113. For instance,the first comparator 440 is connected to the backplane 113 via an inputterminal 446, and the second comparator 442 is connected to thecommunication network 110 via an input terminal 448. In animplementation of the present disclosure, the system 100 is configuredto provide a programmable reference, or set point, to the firstcomparators 440 and the second comparator 442. A user, or an operator,may select a first programmable reference for the first comparator 440.Similarly, the user may select a second programmable reference for thesecond comparator 442. For example, the ICS module 118 (e.g.,computer-readable program) is configured to cause the processor 104 tocause the display of a set of programmable references (i.e., pre-definedprogrammable references according to the design of the system 100 andthe programmable discrete input module) at the display 114 that the usermay select from.

The user may utilize a user-interface device 116 to select theprogrammable references (e.g., the first programmable set point, orthreshold, and the second programmable set point, or threshold) from theset of programmable references. In response to the user selections, themodule 118 is configured to cause the processor 104 to set theprogrammable references of the corresponding comparator 440, 442. In animplementation, the setting of the first programmable reference may bedifferent than the setting of the second programmable reference. Forinstance, the first programmable reference may represent a high setpoint, and the second programmable reference may represent a low setpoint. The programmable reference values may be based upon (i.e.,correspond to) the type of voltage excitation value (i.e., twenty-fourvolts (24V), forty-eight volts (48V) one hundred and twenty volts(120V), or two hundred and forty volts (240V) at the input terminals402A, 402B.

The comparators 440, 442 are configured to compare the demodulated pulsewidth signal at the corresponding terminals 438, 440 with the respectiveprogrammable reference (i.e., the respective set point). For example,the first comparator 440 is configured to compare the demodulated pulsewidth signal with the first programmable reference. When the demodulatedpulse width signal is greater than the first programmable reference, thefirst comparator 440 is configured output a first signal (e.g., a logichigh signal), which is indicative that the input signal at the inputterminals 402A, 402B is greater than the previous input signal atterminals 402A, 402B. The previous input signal may be representative ofa parameter of the industrial environment associated with the system 100(e.g., temperature, liquid level, pressure, etc.) during a previousdiscrete time period. When the demodulated pulse width signal is lessthan the first programmable reference, the first comparator isconfigured to output a second signal (e.g., a logic low signal), whichis indicative that the input signal at the input terminals 402A, 402B isat least approximately the same as the previous input signal atterminals 402A, 402B.

The second comparator 442 is configured to compare the demodulated pulsewidth signal with the second programmable reference. When thedemodulated pulse width signal is greater than the programmablereference, the second comparator 442 is configured output a third signal(e.g., a logic high signal), which is indicative that the input signalat the input terminals 402A, 402B is at least approximately the same asthe previous input signal at terminals 402A, 402B. When the demodulatedpulse width signed is less than the second programmable reference, thesecond comparator 442 is configured output a fourth signal (e.g., alogic low signal), which is indicative that the input signal at theinput terminals 402A, 40B is less than the previous input signal atterminals 402A, 402B.

As shown in FIGS. 4 and 5, the programmable discrete input module 400includes a digital filter 448 having input terminals 450, 452 and anoutput terminal 454. The digital filter 448 is configured to furnishdigital filter functionality to the module 400. The digital filter 448is electrically connected to the output terminals 444, 446 of therespective comparator 440, 442. The digital filter 448 digitally filtersthe signals received by the comparators 440, 442 and generates adiscrete input signal. The discrete input signal is furnished to thesystem 100 and is indicative of whether the input signal at theterminals 402A, 402B is greater than, at least approximately the same,or less than a previously sampled input signal at the terminals 402A,402B. For example, the discrete input signal is indicative of whether anenvironment associated with the industrial control system 100 haschanged over a time interval. In one or more implementations, the outputterminal 454 is communicatively connected to the processor 104 via thecommunication network 110, which utilizes the discrete input signal inaccordance with the requirements of the industrial control systemprocedures.

In one or more implementations, the system 100 may employ multipleprogrammable discrete input modules 400 that are each configured tocommunicate with the computing device 102 via the communication network110. For example, the communication network 110 may comprise a backplane(e.g., a power backplane) that is configured to interface with theprogrammable discrete input modules 400. Respective programmable inputdevices 400 represent channels within the system 100. The backplane isconfigured to provide power and/or communication signal transmissionsbetween the devices 400 and the computing device 102. The devices 400may receive input signals representing data collected from variousmodules 109 associated with the system 100. For example, a first module400 (e.g., a first channel) may receive input signals representing atemperature within a tank. Similarly, a second module 400 (e.g., asecond channel) may receive input signals representing a fluid levelwithin the tank. In this example, the first module 400 may receive inputsignals occurring at a first excitation level (e.g., forty-eight volts(48V)), while the second module 400 may receive input signal occurringat a second excitation level (e.g., two-hundred and forty volts (240V)).The devices 400 (e.g., the channels) are configured to receive softwareselectable parameters (i.e., programmable thresholds, programmablehysteresis) from a user. Thus, the user can provide software selectableparameters to each device, or each channel, according to theenvironmental monitoring requirements of the system 100.

FIG. 6 illustrates a computing device 600 in accordance with an exampleimplementation of the present disclosure. As shown, the computing device600 includes a processor 602 and a memory 604, and a communicationmodule 606, which are configured to furnish at least the same(functionality as the processor 104, memory 106, and the communicationmodule 112 described above. For instance, the memory 604 includes acomputer-readable medium embodying a program executable by the processor602 to cause the processor 602 to perform one or more processes asdescribed herein. In an implementation of the present disclosure, thecomputing device 600 is representative of a field-programmable gatearray, a microcontroller, an application-specific integrated circuitdevice, combinations thereof, or the like.

It is contemplated that one or more of the above described devices maybe implemented in software, hardware, firmware, combinations thereof, orthe like. For instance, the pulse width modulation module 404 may beimplemented as a computing device 600 embodied within a single, discreteintegrated circuit device (i.e., a microcontroller) configured tofurnish pulse width modulation functionality. In another instance, thepulse width demodulation module 434, the comparator 440, 442, and/or thedigital filter 448 may be implemented in software or in hardware. Forexample, the pulse width demodulation module 434, the comparators 440,442, and/or the digital filter 448 may be implemented within one or morecomputing devices 600 (i.e., implemented as an application-specificintegrated circuit device, a microcontroller, or multiple integratedcircuit devices). In another example, the functionality of the pulsewidth demodulation module 434, the comparators 440, 442, and/or thedigital filter 448 may be furnished by software. For instance,functionality of the pulse width demodulation module 434, thecomparators 440, 442, and/or the digital filter 448 may be implementedas program executable instructions, which may be stored in a tangiblemedia such as memory 604, that cause the processor 602 to furnish therespective functionality of the corresponding components (the pulsewidth demodulation module 434, the comparators 440, 442, or the digitalfilter 448).

Example Methods

FIG. 7 illustrates an example method 700 for determining whether anovercurrent event has occurred. In the method 700 illustrated, a signalrepresenting a current value (e.g., a voltage drop) is generated at acurrent sensing circuit (Block 702). In one or more implementations, acurrent sensing circuit 208 is configured to sense a current along anelectrical path 206. As described above, a differential amplifier 228 isconfigured to amplify the voltage drop across the impedance element 226and output a signal representing the amplified voltage drop. As shown inFIG. 6, the signal representing the amplified voltage drop is comparedwith an overcurrent reference (Block 704). As shown in FIGS. 3A and 3B,the comparator 236 is configured to compare the amplified voltage dropsignal with an overcurrent reference (i.e., a voltage reference). If theamplified voltage drop signal is greater than the overcurrent reference,the comparator 236 is configured to output a signal indicating anovercurrent event has occurred. If the amplified voltage drop signal isgreater than the overcurrent reference, the comparator 236 is configuredto output a signal indicating an overcurrent event has occurred. If theamplified voltage drop signal is less than the overcurrent reference,the comparator 236 is configured to output a signal indicating noovercurrent reference has occurred.

A switching behavior of a switching element is controlled by amicrocontroller (Block 706). As described above, the microcontroller 256is configured to control operation (i.e., switching behavior) of theswitching element 202. When the microcontroller 256 receives a signalindicating an overcurrent event has occurred, the microcontroller 256 isconfigured to control operation of the switching element 202. Forexample, the microcontroller 256 is configured to cause the switchingelement 202 to transition from a closed configuration to an openconfiguration to prevent the flow of current through the electrical path206. In some implementations, the microcontroller 256 includedprogrammable parameters for instructing the microcontroller 256 tofunction based upon one or more load parameters. As shown in FIG. 7, inresponse to receiving a signal indicating an overcurrent event, themicrocontroller is configured to cause the switching element totransition from the open configuration to the closed configuration atprogrammed discrete time intervals for a programmed amount of times(Block 708). For example, depending upon a load type interfaced with themodule 200, the microcontroller 256 is configured to cause the switchingelement 202 to transition to the closed configuration at programmeddiscrete time intervals for a programmed amount of times in response toreceiving an indication of an overcurrent event. In other examples,depending on the load type, the microcontroller 256 is configured toprevent the switching element 202 from transitioning back to the closedconfiguration due to an overcurrent event.

FIG. 8 illustrates a method 800 for generating a discrete input signalutilizing the programmable discrete input module 200 described above. Asshown in FIG. 8, an input signal is received (Block 802). The module 200is configured to be interfaced with one or more I/O modules 108, such assensors 109 within an industrial control system environment. A pulsewidth modulated signal based upon the input signal is generated at apulse width/modulation module (Block 804). As described above, a pulsewidth modulation module 204 is configured to generate a pulse widthmodulation signal based upon the input signal.

An isolated pulse width modulated signal based upon the pulse widthmodulation signal is generated by an isolator (Block 806). The isolator424 is configured to generate an isolated signal for demodulation by thepulse width demodulation module. For example, an optical transmitter 430is configured to emit electromagnetic radiation within a spectrum oflimited wavelengths based upon the pulse width modulation signal. Theoptical sensor is configured to detect the electromagnetic radiation andgenerate an isolated signal based upon the detected electromagneticradiation.

A demodulated pulse width signal based upon the isolated pulse widthmodulated signal is generated (Block 808). As described above, theisolated signal is demodulated by the pulse width demodulation module434. As shown in FIG. 7, a first comparison signal is generated basedupon a comparison of the pulse width demodulated signal with a firstprogrammable reference (Block 810), and a second comparison signal isgenerated based upon comparison of the pulse width demodulated signalwith a second programmable reference (Block 812). A first comparisonsignal and a second comparison signal are generated by a firstcomparator and a second comparator, respectively, based upon acomparison of a corresponding first programmable reference and a secondprogrammable reference. The first programmable reference and the secondprogrammable reference may be user-selectable such that a user canselect a set point. The set point may be based upon a voltage excitationassociated with the module 200. At least one of the first comparisonsignal or the second comparison signal is filtered at a digital filterto generate a discrete input signal (Block 814). As described above, adigital filter filters the first comparison signal or the secondcomparison signal to generate a discrete input signal for the system100.

CONCLUSION

Although the subject matter has been described in language specific tostructural features and/or process operations, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

What is claimed is:
 1. A programmable discrete input module comprising:a pulse width modulation module configured to generate a pulse widthmodulated signal based upon an input signal; an isolator communicativelycoupled to the pulse width modulation module, the isolator beingconfigured to receive the pulse width modulated signal from the pulsewidth modulation module and generate an isolated modulated pulse widthsignal based upon the received pulse width modulated signal, theisolator comprising an optical transmitter configured to emitelectromagnetic radiation in a limited spectrum of wavelengths basedupon the pulse width modulated signal and an optical sensor configuredto detect the electromagnetic radiation in a limited spectrum ofwavelengths, the optical sensor configured to generate the isolatedmodulated pulse width signal in response thereto; a pulse widthdemodulation module communicatively coupled to the isolator, the pulsewidth demodulation module being configured to receive the isolatedmodulated pulse width signal from the isolator and generate ademodulated pulse width signal based on the received isolated modulatedpulse width signal; and a comparator communicatively coupled to thepulse width demodulation module, the comparator being configured toreceive the demodulated pulse width signal and generate a discrete inputsignal based on a comparison of the received demodulated pulse widthsignal with first and second programmable reference values, at least oneof the first programmable reference and the second programmablereference comprising a user-selectable programmable reference configuredto be programmed by a user to select a set point associated with the atleast one of the first programmable reference and the secondprogrammable reference.
 2. The programmable discrete input module asrecited in claim 1, further comprising a voltage converter having aninput terminal and an output terminal, the output terminalcommunicatively coupled to the pulse width modulation module, thevoltage converter configured to convert an analog voltage signal at theinput terminal to a direct current signal at the output terminal, thedirect current signal comprising the input signal.
 3. The programmablediscrete input module as recited in claim 1, wherein the comparatordefines a first comparator configured to compare the demodulated pulsewidth signal with the first programmable reference and output a firstcomparator output signal based upon the comparison; the programmablediscrete input module further comprising: a second comparator configuredcompare the demodulated pulse width signal with the second programmablereference and output a second comparator output signal based upon thecomparison; and a digital filter communicatively coupled to the firstcomparator and the second comparator, the digital filter configured todigitally filter at least one of the first comparator output signal andthe second comparator output signal to generate the discrete inputsignal.
 4. The programmable discrete input module as recited in claim 3,wherein the first programmable reference is a high set point and thefirst comparator configured to: generate the first comparator outputsignal as a high first comparator output signal when the demodulatedpulse width signal is greater than the first programmable referenceindicating that the input signal received at the pulse width modulationmodule is greater than a previous input signal received at the pulsewidth modulation module, and generate the first comparator output signalas a low first comparator output signal when the demodulated pulse widthis less than the first programmable reference indicating that the inputsignal received at the pulse width modulation module is approximatelyequal to the previous input signal received at the pulse widthmodulation module, and wherein the second programmable reference is alow set point and the second comparator configured to: generate thesecond comparator output signal as a high second comparator outputsignal when the demodulated pulse width signal is greater than thesecond programmable reference indicating that the input signal receivedat the pulse width modulation module is approximately equal to aprevious input signal received at the pulse width modulation module, andgenerate the second comparator output signal as a low second comparatoroutput signal when the demodulated pulse width is less than the secondprogrammable reference indicating that the input signal received at thepulse width modulation module is less than the previous input signalreceived at the pulse width modulation module.
 5. The programmablediscrete input module as recited in claim 4, wherein the discrete inputsignal generated by the digital filter is indicative of whether theinput signal received at the pulse width modulation module is one ofgreater than, approximately equal to and less than the previous inputsignal received at the pulse width modulation module.
 6. A programmablediscrete input module comprising: a pulse width modulation moduleconfigured to generate a pulse width modulated signal based upon aninput signal; an isolator communicatively coupled to the pulse widthmodulation module and configured to generate an isolated pulse widthmodulated signal based upon the pulse width modulated signal; a pulsewidth demodulation module communicatively coupled to the isolator andconfigured to generate a demodulated pulse width signal based on theisolated pulse width modulated signal; a comparator communicativelycoupled to the pulse width demodulation module, the comparatorconfigured to compare the demodulated pulse width signal with first andsecond programmable references and generate first and second comparatoroutput signals, respectively, based upon the comparison; and a digitalfilter communicatively coupled to the comparator and configured todigitally filter at least one of the first comparator output signal andthe second comparator output signal to generate a discrete input signal.7. The programmable discrete input module as recited in claim 6, whereinat least one of the first programmable reference and the secondprogrammable reference comprise a user-selectable programmable referenceconfigured to be programmed by a user to select a set point associatedwith the at least one of the first programmable reference and the secondprogrammable reference.
 8. The programmable discrete input module asrecited in claim 6, wherein the isolator comprises: an opticaltransmitter configured to emit electromagnetic radiation in a limitedspectrum of wavelengths based upon the pulse width modulated signal; andan optical sensor configured to detect the electromagnetic radiation ina limited spectrum of wavelengths, the optical sensor configured togenerate the isolated modulated pulse width signal in response thereto.9. The programmable discrete input module as recited in claim 6, furthercomprising a voltage converter having an input terminal and an outputterminal, the output terminal communicatively coupled to the pulse widthmodulation module, the voltage converter configured to convert an analogvoltage signal at the input terminal to a direct current signal at theoutput terminal, the direct current signal comprising the input signal.10. The programmable discrete input module as recited in claim 6,wherein the comparator defines a first comparator configured to comparethe demodulated pulse width signal with the first programmable referenceand output the first comparator output signal based upon the comparison;the programmable discrete input module further comprising: a secondcomparator configured to compare the demodulated pulse width signal withthe second programmable reference and output the second comparatoroutput signal based upon the comparison.
 11. The programmable discreteinput module as recited in claim 6 wherein the first programmablereference is a high set point and the comparator is configured to:generate the first comparator output signal as a high first comparatorsignal when the demodulated pulse width signal is greater than the firstprogrammable reference indicating that the input signal received at thepulse width modulation module is greater than a previous input signalreceived at the pulse width modulation module, and generate the firstcomparator output signal as a low first comparator signal when thedemodulated pulse width is less than the first programmable reference,indicating that the input signal received at the pulse width modulationmodule is approximately equal to the previous input signal received atthe pulse width modulation module, and wherein the second programmablereference is a low set point and the second comparator configured to:generate the second comparator output signal as a high second comparatorsignal when the demodulated pulse width signal is greater than thesecond programmable reference indicating that the input signal receivedat the pulse width modulation module is approximately equal to aprevious input signal received at the pulse width modulation module, andgenerate the second comparator output signal as a low second comparatorsignal when the demodulated pulse width is less than the secondprogrammable reference indicating that the input signal received at thepulse width modulation module is less than the previous input signalreceived at the pulse width modulation module.
 12. The programmablediscrete input module as recited in claim 6, wherein the discrete inputsignal generated by the digital filter is indicative of whether theinput signal received at the pulse width modulation module is one ofgreater than, approximately equal to and less than the previous inputsignal received at the pulse width modulation module.
 13. A method forgenerating a discrete input signal, the method comprising: receiving aninput signal; generating a pulse width modulated signal based upon theinput signal; generating an isolated pulse width modulated signal basedupon the pulse width modulated signal; generating a demodulated pulsewidth signal based upon the isolated pulse width modulated signal;receiving a user selection for at least one of defining a first setpoint for a first programmable reference value and defining a second setpoint for a second programmable reference value; and generating adiscrete input signal based on a comparison of the demodulated pulsewidth signal with the first and second programmable reference values.14. The method as recited in claim 13, wherein generating an isolatedpulse width modulated signal based upon the pulse width modulated signalcomprises: emitting electromagnetic radiation in a limited spectrum ofwavelengths based upon the pulse width modulated signal; and detectingthe electromagnetic radiation in a limited spectrum of wavelengths at anoptical sensor, the optical sensor configured to generate the isolatedpulse width modulated signal in response thereto.
 15. The method asrecited in claim 13, wherein generating the discrete input signal basedon a comparison of the demodulated pulse width signal with the first andsecond programmable reference values comprises: generating a firstcomparator output signal based on a comparison of the demodulated pulsewidth signal with the first programmable reference value; generating asecond comparator output signal based on a comparison of the demodulatedpulse width signal with the second programmable reference value; andfiltering at least one of the first comparator output signal and thesecond comparator output signal to generate the discrete input signal.16. The method as recited in claim 15, wherein generating the discreteinput signal based on a comparison of the demodulated pulse width signalwith the first and second programmable reference values furthercomprises: receiving the first and second comparator output signals; andgenerating a discrete input signal that is indicative of whether theinput signal is one of greater than, approximately equal to and lessthan the previous input signal based on the first and second comparatoroutput signals.
 17. The method as recited in claim 13, whereingenerating the discrete input signal based on a comparison of thedemodulated pulse width signal with the first and second programmablereference values comprises: determining whether the demodulated pulsewidth signal is greater than the first programmable reference value;generating a first comparator output signal, the first comparator outputsignal being one of a high first comparator output signal and a lowfirst comparator output signal based on the determination, whereingeneration of the high first comparator output signal indicates that theinput signal is greater than a previous input signal; determiningwhether the demodulated pulse width signal is less than the secondprogrammable reference value; and generating a second comparator outputsignal, the second comparator output signal being one of a high secondcomparator output signal and a low second comparator output signal basedon the determination, wherein generation of the low second comparatoroutput signal indicates that the input signal is less than a previousinput signal.